var aCity={
		11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",
		31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",
		41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",
		50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",
		61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",
		71:"台湾",81:"香港",82:"澳门",91:"国外"};

function isCardID(sId){ 
	var iSum=0 ; 
	var info="" ; 
	if(!/^\d{17}(\d|x)/i.test(sId))
		return "你输入的身份证长度或格式错误";
	sId=sId.replace(/x/i,"a"); 
	if(aCity[parseInt(sId.substr(0,2))]==null) 
		return "你的身份证地区非法"; 
	sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2));
	
	var d=new Date(sBirthday.replace(/-/g,"/")) ; 
	if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))
		return "身份证上的出生日期非法"; 
	
	for(var i = 17;i>=0;i--) 
		iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11) ; 
	if(iSum%11!=1) return "你输入的身份证号非法"; 
	
	return true;
}
$.extend($.fn.validatebox.defaults.rules,{
	length: {
		validator: function(value,param) {
			 if (value.length < param[0] || value.length > param[1]) {
  			   if(param[0] == param[1]) {
  				   $.fn.validatebox.defaults.rules.length.message = '长度为' + param[0] + '位';
  			   } else {
  				   $.fn.validatebox.defaults.rules.length.message = '长度必须在' + param[0] + '至' + param[1] + '范围'; 
  			   }
                 return false;
  		   } else {
  			   return true;
  		   } 
		}
	},
	idcard: { 
		validator: function(value,param){ 
			var flag= isCardID(value); 
			if(flag == true) {
				return true;
			} else {
				$.fn.validatebox.defaults.rules.idcard.message = flag;
			}
		}
	},
	chinese:{ 
	       validator: function (value,param) { 
	    	   if(! /^[\u0391-\uFFE5]+$/.test(value)) {
	    		   $.fn.validatebox.defaults.rules.chinese.message = '只能为中文';
	    		   return false;
	    	   } else {
	    		   if (value.length < param[0] || value.length > param[1]) {
	    			   if(param[0] == param[1]) {
	    				   $.fn.validatebox.defaults.rules.chinese.message = '长度为' + param[0] + '位';
	    			   } else {
	    				   $.fn.validatebox.defaults.rules.chinese.message = '长度必须在' + param[0] + '至' + param[1] + '范围'; 
	    			   }
	    			    
	                   return false;
	    		   } else {
	    			   return true;
	    		   }
	    	   }
	       },
	       message: '只能输入汉字'
	 },
	//用户账号验证(只能包括 _ 数字 字母)  
    account: {//param的值为[]中值 
        validator: function (value, param) { 
            if (value.length < param[0] || value.length > param[1]) { 
                $.fn.validatebox.defaults.rules.account.message = '长度必须在' + param[0] + '至' + param[1] + '范围'; 
                return false; 
            } else { 
                if (!/^[\w]+$/.test(value)) { 
                    $.fn.validatebox.defaults.rules.account.message = '只能数字、字母、下划线组成.'; 
                    return false; 
                } else { 
                    return true; 
                } 
            } 
        }, message: '' 
    },
    equals: {    
        validator: function(value,param){    
            return value == $(param[0]).val();    
        },    
        message: '与第一次密码不匹配.'   
    },
    checkNum:{
    	validator: function(value,param) {
    		return /^([0-9]+)$/.test(value);
    	},
    	message:'请输入整数'
    }
    
});
